home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / filesyst / dosfs / dmsdosfs.000 / dmsdosfs / dmsdosfs-0.6.9b / doc / troubleshooting.doc < prev   
Text File  |  1996-07-29  |  13KB  |  248 lines

  1. troubleshooting.doc
  2.  
  3. This file contains solutions to common problems with the dmsdos driver.
  4. It is mostly based on the feedback of dmsdos users that mailed me for some
  5. hints (thanks a lot to all of you!).
  6.  
  7. ------------------------------------------------------------------------------
  8.  
  9.   If you have problems, you may have found a bug. But check the following
  10.   list before (it is a collection of problems I have been reported and, I
  11.   think, can be solved easily). See also file BUGS for a list of known bugs.
  12.  
  13.   *** See also your kernel log for 'DMSDOS:...' messages. Each message is
  14.       explained in file messages.doc. There you can find hints how to
  15.       solve the problems, too.
  16.  
  17. - It does not install/compile!
  18.  
  19.   Did you run the appropriate INSTALL script? Use INSTALL_1.2 for Linux 1.2.XX
  20.   and INSTALL_1.3 for Linux 1.3.XX kernels below 1.3.39. For newer kernels
  21.   try the INSTALL_1.3.4x or INSTALL_1.3.8x script. I have tested this dmsdos
  22.   version under Linux 1.2.10, 1.2.13, 1.3.24, 1.3.45 and 1.3.81 myself 
  23.   successfully and I've been reported that it works with a lot of other
  24.   versions too (the list would be too long to include it here). It compiled
  25.   under gcc 2.5.8 and 2.6.3 without any trouble. Try the same configuration,
  26.   and *please* tell me which versions you used when it failed so I can try to
  27.   fix the problem.
  28.  
  29.   Please also note the awk problem that may break 'make dep'. It is 
  30.   explained in Chapter 'Installation' (see file dmsdos.doc).
  31.  
  32. - I cannot find the CVF subdirectories after mounting with type
  33.   dmsdos or umsdos, I only see the CVFs as large files.
  34.  
  35.   There was a problem with the CVF(s) that were not converted to
  36.   subdirectories. See your kernel log (/var/adm/messages) for details.
  37.   Only for umsdos users: Did you configure your kernel to support
  38.   doublespace/drivespace in umsdos partitions?
  39.  
  40. - I cannot write to files, delete files, create directories ... in the
  41.   compressed subdirectories.
  42.  
  43.   Lots of possibilities here -- watch your kernel log for a DMSDOS error
  44.   message that may explain what went wrong...
  45.   * Have you disabled write access at compile time? (If you don't know about
  46.     this you haven't.) Then you'll find an "illegal write access" message.
  47.   * Did you mount read-only (option ro or comp=ro)?
  48.   * Only for umsdos users: Be sure to give write permission to the CVF
  49.     main directories (chmod +w directory).
  50.   * Is your compressed partition almost full? The driver refuses to allocate
  51.     new clusters on a partition that is almost full when it thinks further
  52.     write access may be dangerous and might cause data loss. Delete some
  53.     files and retry.
  54.   * The compressed partition may have errors. The driver sets errorneous
  55.     compressed partitions to read-only immediately after mounting them. 
  56.     However, you can allow write access again by setting the comp parameter
  57.     via dutil (example: 'dutil /DOS/dblspace.001 setcomp guess'). Of course,
  58.     it is not recommended to write to errorneous partitions.....
  59.  
  60. - When trying to write to a compressed filesystem I receive I/O errors.
  61.  
  62.   See previous problem. If you think it's another reason, run dutil to check 
  63.   whether the filesystem is full or too fragmented. If the compressed
  64.   filesystem is read-only but the underlying dos filesystem is read-write,
  65.   all write access to the compressed filesystem is refused. There is, of
  66.   course, no real I/O error. (The dmsdos driver returns the 'permission
  67.   denied' error code, but some applications claim 'I/O error' instead.)
  68.  
  69. - When trying to write to the compressed partition, I receive "no space left
  70.   on device" errors though dutil says there's *a lot* of free space (>100KB).
  71.  
  72.   You have run out of clusters. This is new since dmsdos version 0.6.8: the
  73.   driver ensures that you don't get more clusters than dos would give to
  74.   you (otherwise dos' scandisk.exe would *destroy* the compressed partition
  75.   the next time it checks it by inventing some strange errors and trying to
  76.   correct them [arghhhh... seems to be a scandisk bug]). Two solutions are
  77.   possible:
  78.  
  79.     * Boot dos, run dblspace.exe or drvspace.exe, set the compression ratio to
  80.       the value the program suggests. Don't be surprised if it suggests high
  81.       compression rates you aren't used to from dos - it's because dmsdos
  82.       compresses a little better than dos itself. (In fact, you needn't
  83.       believe the value dos claims - it's exaggerating sometimes....)
  84.     * Set a higher cluster limit with dutil. (*WARNING*: This is experimental
  85.       and hasn't been tested thoroughly yet. In fact, you can set *any*
  86.       limit you want - but it may confuse dos later.) Example: 
  87.       'dutil /DOS/dblspace.001 setmaxcluster 1000' sets the cluster limit to
  88.       1000. The actual cluster limit can be obtained with dutil (example:
  89.       'dutil /DOS/dblspace.001', watch for the "max_cluster" value) or with
  90.       chkdsk.exe under dos (take the number of clusters + 1).
  91.  
  92.   Both alternatives are supposed to be identical - the dutil setmaxcluster
  93.   command has been implemented in order to solve the problem without having
  94.   to boot dos, but it is currently experimental.
  95.  
  96. - A file I want to read appears to be empty but the directory says it is not
  97.   empty.
  98.  
  99.   There was a problem decompressing the file. See your kernel messages
  100.   (/var/adm/messages). The first thing to do is to boot dos and run the dos
  101.   filesystem checker on the compressed partition (do not skip the surface test
  102.   since only this test finds erros in compressed data). After that, reboot
  103.   Linux and retry. If the problem did not disappear this may be a real
  104.   dmsdos bug and should be emailed to the author. If you are running
  105.   drivespace 3 under win95 you may encounter this problem quite often because
  106.   it isn't fully supported yet (it's the drivespace 3 'Ultra' compression
  107.   scheme dmsdos can't read).
  108.  
  109. - My Slackware version refuses to boot because it does not find a fsck.dmsdos
  110.  
  111.   Find the file fsck.msdos (should be in /etc/fs) and create a link
  112.   fsck.dmsdos that points to fsck.msdos. I have never seen such a Slackware
  113.   version but I have been reported that some older Slackware versions need
  114.   it. You should upgrade to a newer version because this behavior is quite
  115.   critical. 
  116.  
  117. - The command 'df' does not tell how much free space is on the compressed
  118.   partitions.
  119.  
  120.   This is because the kernel treats all the CVFs and the real underlying
  121.   msdos partition as one partition. So it displays only the free space
  122.   on the real msdos part. The space allocated by a CVF is reported as
  123.   fully allocated (because it *is* occupied by a large file: the CVF). Run
  124.   the external dmsdos utility dutil on the compressed partition to see how
  125.   much space is available inside a CVF. Example: 'dutil /DOS/dblspace.000'
  126.   (you may specify any directory inside the CVF you want information about).
  127.  
  128. - I compiled in write access, mounted a compressed floppy at /mnt with
  129.   option comp=no (or similar) as type umsdos and tried to run umssync on
  130.   the disk. It failed with an error message and now some or all files are 
  131.   gone (help)!
  132.  
  133.   You cannot umssync a compressed floppy without freeing up some space for
  134.   the umsdos special file --linux-.--- (the real msdos part of a compressed
  135.   floppy is always totally full).
  136.  
  137.   But you have luck, the files are not gone at all. Unmount the floppy and 
  138.   mount it as type dmsdos. Then remove the (empty) file --linux-.--- and the
  139.   'readme' or 'readthis' or whatoever (it contains a message that this disk
  140.   is compressed and that you must run Micro$ doublespace to read it ...
  141.   very interesting - and not true at all: you can use Linux and dmsdos
  142.   instead :-) ). Now there should be some bytes free for umsdos. Unmount
  143.   the floppy again, mount it as type umsdos and retry. If the problem
  144.   appeared inside the compressed partition, also mount as type dmsdos, remove
  145.   --linux-.--- where files were gone, free up some space, mount again as type 
  146.   umsdos, and retry running umssync.
  147.  
  148. - The utility dutil reports a different compression ratio and different free
  149.   space than dos.
  150.  
  151.   The utility uses another method to calculate the compression ratio and the
  152.   amount of free space. Well, dos displays a dream ratio, dutil exactly
  153.   determines how much the files shrunk on compression. Dos' ratio is higher
  154.   because it compares the space the files *have* allocated with the space
  155.   the files *would have* allocated on an uncompressed partition with an 8 KB
  156.   (32KB under drivespace 3) cluster size. The slack at the end of the files
  157.   causes the difference (especially on small files), but saving wasted space
  158.   is not the same as compression (I think). Since the ratio is used to
  159.   estimate the free space, this value is also different.
  160.  
  161. - The external utility dutil displays garbage.
  162.  
  163.   Did you change the '#define MAXFRAGMENT' in dmsdos_fs.h ? Then you *must*
  164.   recompile dutil, too. You may have an old version of dutil somewhere in
  165.   your path, find and delete it and recompile dutil. If dutil displays just
  166.   zeros, you are definitely running a dutil from an older dmsdos version. 
  167.   Remove it and recompile the source.
  168.  
  169. - My compressed partition under win95 fails!
  170.  
  171.   It's not win95, but it's the drivespace 3 format that is not yet fully
  172.   supported due to lack of documentation. You may even encounter serious
  173.   problems (unreadable files and corrupted directories that confuse the
  174.   dmsdos driver and might cause strange things). Currently, you cannot read
  175.   files compressed with the 'Ultra' compression method (I simply don't know
  176.   how to decompress them) and you can't access fragmented clusters.
  177.   Recompress to 'High' and defragment your drive. See your drivespace 3
  178.   documentation how to do so.
  179.  
  180. - The external dmsdos utility displays some "lost clusters", but dos'
  181.   scandisk says everything is okay.
  182.  
  183.   The term "lost clusters" doesn't mean that the clusters are not assigned to
  184.   a file (like in a normal dos fs). Instead, it tells there are clusters that
  185.   have been allocated in the FAT but have a zero MDFAT entry. This is not a
  186.   filesystem error, it only means that the clusters do exist, but they don't
  187.   contain any data and therefore don't use disk space. So they aren't really
  188.   used, but they aren't free either. This is a special situation that can only
  189.   occur in a compressed filesystem. These lost clusters may result
  190.   from situations where the filesystem got too full (i.e. the driver had to
  191.   throw away the data it couldn't write to the full filesystem).
  192.  
  193. - I can't see long filenames on my win95 partitions, I only see the short
  194.   ones.
  195.  
  196.   If you cannot see long filenames in a compressed partition: In this dmsdos
  197.   version auto-detection of long filenames has been disabled. Try mounting
  198.   with option 'long=on'. If you want to see long filenames in the uncompressed
  199.   host partition, try mount option 'vfat' (please note that you must have
  200.   configured your kernel appropriately during 'make config').
  201.  
  202. - I've created a new compressed filesystem with 'mkdir /DOS/dblspace.002'
  203.   but dos doesn't mount it.
  204.  
  205.   You haven't really created a compressed partition, but you have created
  206.   a usual directory /DOS/dblspace.002 (which you *can* see under dos). Use
  207.   dos to create new compressed partitions (but remove the stale dblspace.002
  208.   directory first becuse it may confuse dos).
  209.  
  210. - My filenames are upper case!
  211.  
  212.   This is because long filename support has been turned on. If you don't have
  213.   long filenames (e.g. because you use dos <= 6.22) the driver may have failed
  214.   to auto-detect this. You can disable long filename support inside a
  215.   compressed partition with the mount option 'long=off'. If you don't want to
  216.   disable long filename support, but you want lower case short names, try
  217.   option 'low'.
  218.  
  219. - The dmsdos or umsdos module fails to load and complains about undefined
  220.   symbols instead (only for kernels > 1.3.8x).
  221.  
  222.   Please note the complex msdos filesystem hierarchy (only kernels > 1.3.8x).
  223.   The '->' means 'depends on', i.e. must be loaded before or must be part
  224.   of the kernel.
  225.     A. Without dmsdos.
  226.          umsdos -> msdos
  227.          vfat -> fat
  228.          msdos -> fat
  229.     B. With dmsdos, no vfat support in uncompressed part, no DoubleSp/DriveSp
  230.        support in umsdos partitions.
  231.          umsdos -> msdos
  232.          vfat -> fat
  233.          msdos -> fat
  234.          dmsdos -> msdos
  235.     C. vfat support in uncompressed part.
  236.          *additional* to B: dmsdos -> vfat
  237.     D. DoubleSp/DriveSp support in umsdos partitions.
  238.          *additional* to B: umsdos -> dmsdos
  239.   Usually try to load the modules in the following order: fat, msdos, vfat,
  240.   dmsdos, umsdos. Unload them in reverse order.
  241.  
  242. - I cannot unmount my dmsdos partition. umount complains with "device busy".
  243.  
  244.   Some process is currently using a file or a directory of your partition.
  245.   If you have started the dmsdos daemon, you cannot unmount the partition
  246.   which you specified as argument in the dmsdosd command line. In this case,
  247.   you must kill the daemon before with SIGINT or SIGTERM.
  248.